home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2001 / MacHack 2001.toast / pc / The Hacks / PhaseShiftX / Source / makefile.targets < prev    next >
Encoding:
Makefile  |  2001-06-23  |  2.2 KB  |  80 lines

  1. ifeq "${findstring -s,${PROJECT_MAKE_FLAGS}}" "-s"
  2. .SILENT:
  3. endif
  4.  
  5. .SUFFIXES:
  6. .SUFFIXES: .c.d .cp.d
  7. .SUFFIXES: .c.o .cp.o
  8.  
  9.  
  10. ############################
  11. ### Global Build Targets ###
  12. ############################
  13.  
  14. .PHONY: all
  15. all: install
  16.  
  17. .PHONY: install release debug
  18. install release debug: ${DEPENDENT_MAKEFILE}
  19.     ${MAKE} -f ${DEPENDENT_MAKEFILE} $@.target
  20.  
  21. .PHONY: clean
  22. clean:
  23.     -rm -rf ${BUILD_DST_ROOT}/* > /dev/null
  24.     -rm -rf ${BUILD_OBJ_ROOT}/* > /dev/null
  25.     -rm -rf ${BUILD_SYM_ROOT}/* > /dev/null
  26.  
  27.  
  28. ############################
  29. ### Helper Build Targets ###
  30. ############################
  31.  
  32. .PHONY: dump_common
  33. dump_common:
  34.     @ECHO "### ${PROJECT_NAME}${SUBPROJECT_SUBPATH_DELIMITER}${SUBPROJECT_SUBPATH} ###"
  35.     @ECHO "PROJECT_NAME         = ${PROJECT_NAME}"
  36.     @ECHO "PROJECT_ROOT         = ${PROJECT_ROOT}"
  37.     @ECHO "PROJECT_MAKE_FLAGS   = ${PROJECT_MAKE_FLAGS}"
  38.     @ECHO "BUILD_ROOT           = ${BUILD_ROOT}"
  39.     @ECHO "BUILD_DST_ROOT       = ${BUILD_DST_ROOT}"
  40.     @ECHO "BUILD_OBJ_ROOT       = ${BUILD_OBJ_ROOT}"
  41.     @ECHO "BUILD_SYM_ROOT       = ${BUILD_SYM_ROOT}"
  42.     @ECHO "SUBPROJECT_NAME      = ${SUBPROJECT_NAME}"
  43.     @ECHO "SUBPROJECT_ROOT      = ${SUBPROJECT_ROOT}"
  44.  
  45. dump_source_files:
  46.     BANNER="SOURCE_FILES         =";                        \
  47.     for i in `echo ${SOURCE_FILES}`;                        \
  48.     do                                                        \
  49.         ${ECHO} "$${BANNER}" $$i;                            \
  50.         BANNER="                      ";                    \
  51.     done
  52.  
  53. ${DEPENDENT_MAKEFILE}: ${DEPENDENT_FILES}
  54.     if [ ! -d ${BUILD_OBJ_ROOT} ] ; then ${MKDIR} ${BUILD_OBJ_ROOT}; fi
  55.     ${INFORM_MKMAKEFILE}
  56.     ${CAT} makefile > $@
  57.     ${FIND} ${BUILD_OBJ_ROOT} -type f -name \*.d -exec ${CAT} {} \; >> $@
  58.  
  59. ${BUILD_OBJ_ROOT}/%.c.d: %.c
  60.     if [ ! -d ${dir $@} ] ; then ${MKDIR} ${dir $@}; fi
  61.     ${ECHO} "" > $@
  62.     ${ECHO} -n ${dir $@} >> $@
  63.     set -e; ${STATUS_CC_MKDEP} $< | sed -e '$$s/$$/ \\/' >> $@
  64.     ${ECHO} " " $@ >> $@
  65.  
  66. ${BUILD_OBJ_ROOT}/%.cp.d: %.cp
  67.     if [ ! -d ${dir $@} ] ; then ${MKDIR} ${dir $@}; fi
  68.     ${ECHO} "" > $@
  69.     ${ECHO} -n ${dir $@} >> $@
  70.     set -e; ${STATUS_CC_MKDEP} $< | sed -e '$$s/$$/ \\/' >> $@
  71.     ${ECHO} " " $@ >> $@
  72.  
  73. ${BUILD_OBJ_ROOT}/%.c.o: %.c
  74.     if [ ! -d ${dir $@} ] ; then ${MKDIR} ${dir $@}; fi
  75.     ${STATUS_CC_COMPILE} $< -o $@
  76.  
  77. ${BUILD_OBJ_ROOT}/%.cp.o: %.cp
  78.     if [ ! -d ${dir $@} ] ; then ${MKDIR} ${dir $@}; fi
  79.     ${STATUS_CC_COMPILE} $< -o $@
  80.